package com.icongyou.enterprise.talent_analysis.mapper;

import com.icongyou.enterprise.talent_analysis.entity.PortraitCache;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

/**
 * 画像缓存Mapper
 */
@Mapper
public interface PortraitCacheMapper {
    
    /**
     * 查询缓存
     */
    PortraitCache selectByStudentAndTemplate(@Param("studentId") String studentId, 
                                            @Param("templateId") String templateId);
    
    /**
     * 插入缓存
     */
    int insert(PortraitCache cache);
    
    /**
     * 更新缓存（使用乐观锁）
     */
    int updateByIdWithVersion(PortraitCache cache);
    
    /**
     * 删除学生的所有缓存（当数据变更时）
     */
    int deleteByStudentId(@Param("studentId") String studentId);
    
    /**
     * 删除特定模板的所有缓存（当模板变更时）
     */
    int deleteByTemplateId(@Param("templateId") String templateId);
}
